package com.jxdinfo.hussar.example.common.schedulingtask.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author 乔镔
 * @since 2024-03-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class CBOItemMasterInventoryInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * CBO_ItemMaster表主键
     */
    @TableId("ID")
    private Long masterId;

    /**
     * CBO_ItemMaster表创建时间
     */
    @TableField("CreatedOn")
    private LocalDateTime masterCreatedOn;

    /**
     * CBO_ItemMaster表创建人
     */
    @TableField("CreatedBy")
    private String masterCreatedBy;

    /**
     * CBO_ItemMaster表修改人
     */
    @TableField("ModifiedOn")
    private LocalDateTime masterModifiedOn;

    /**
     * CBO_ItemMaster表修改时间
     */
    @TableField("ModifiedBy")
    private String masterModifiedBy;

    /**
     * CBO_ItemMaster表料号
     */
    @TableField("Code")
    private String itemCode;


    /**
     * CBO_ItemMaster表品名
     */
    @TableField("Name")
    private String itemName;

    /**
     * CBO_ItemMaster表规格
     */
    @TableField("SPECS")
    private String specification;



    /**
     * CBO_ItemMaster表的生效状态。0失效1生效
     */
    @TableField("Effective_IsEffective")
    private String enableFlag;


    /**
     * 物料id
     */
    private Long itemTypeId;
    /**
     * 物料编码
     */
    private String itemTypeCode;
    /**
     * 物料名称
     */
    private String itemTypeName;

    /**
     * Base_UOM_Trl表的name字段-生产单位
     */
    @TableField("ManufactureUOM")
    private String unitOfMeasure;

    /**
     * CBO_ItemMaster表的ManufactureUOM单位id，是关联字段
     */
    @TableField("ManufactureUOM")
    private String measureId;

    /**
     * CBO_ItemMaster表的ManufactureUOM单位id，是关联字段
     */
    @TableField("StandardGrade")
    private Long StandardGrade;

    /**
     * CBO_ItemMaster表的ManufactureUOM单位id，是关联字段
     */
    @TableField("StartGrade")
    private Long StartGrade;

    /**
     * CBO_ItemMaster表的ManufactureUOM单位id，是关联字段
     */
    @TableField("EndGrade")
    private Long EndGrade;


    // 下面的字段没用上-----------------

    /**
     * CBO_ItemMaster表参考料号1
     */
    @TableField("Code1")
    private String itemCode1;
    /**
     * CBO_ItemMaster表参考料号2
     */
    @TableField("Code2")
    private String itemCode2;


    /**
     * CBO_ItemMaster表的库存单位重量
     */
    @TableField("Weight")
    private BigDecimal weight;

    /**
     * CBO_ItemMaster表的厂牌
     */
    @TableField("TradeMark")
    private Long tradeMark;

    /**
     * CBO_ItemMaster表的参考成本
     */
    @TableField("RefrenceCost")
    private BigDecimal refrenceCost;

    /**
     * CBO_ItemMaster表的成本币种
     */
    @TableField("CostCurrency")
    private Long costCurrency;

    /**
     * CBO_ItemMaster表的料品库存相关信息
     */
    @TableField("InventoryInfo")
    private Long inventoryInfo;

    /**
     * CBO_InventoryInfo 表主键
     */
    private Long infoId;

    /**
     * CBO_InventoryInfo表安全库存量
     */
    @TableField("SafetyStockQty")
    private BigDecimal safetyStockQTY;

    /**
     * CBO_InventoryInfo表安全库存期
     */
    @TableField("SafetyStockPeriod")
    private Integer safetyStockPeriod;

    /**
     * CBO_InventoryInfo表库存上限
     */
    @TableField("InventoryMaxLimitQty")
    private BigDecimal inventoryMaxLimitQTY;

    /**
     * CBO_InventoryInfo表库存下限
     */
    @TableField("InventoryMinLimitQty")
    private BigDecimal inventoryMinLimitQTY;

    /**
     * BO_InventoryInfo表创建时间
     */
    @TableField("CreatedOn")
    private LocalDateTime infoCreatedOn;

    /**
     * CBO_InventoryInfo表创建人
     */
    @TableField("CreatedBy")
    private String infoCreatedBy;

    /**
     * BO_InventoryInfo表修改时间
     */
    @TableField("ModifiedOn")
    private LocalDateTime infoModifiedOn;

    /**
     * BO_InventoryInfo表修改时间
     */
    @TableField("ModifiedBy")
    private String infoModifiedBy;

}
